package com.cn.wanxi.util;

import javax.print.DocFlavor;
import java.io.File;
import java.io.FileOutputStream;
import java.io.IOException;
import java.io.OutputStream;

public class Test {
    /**
     * 类        1
     * 和
     * 对象       n
     * <p>
     * 将生活中的例子通过java语言描述出来
     * 小明
     * <p>
     * <p>
     * java 里面  先后类  在通过类进行描述对象
     */
    public static void main(String[] args) throws IOException {
        String pathname = "D:\\wanxi\\step-3\\canyin03-0329\\web/aa/bb/bb/cc.txt";
//        File file = new File(pathname);//实例化
//        构造方法,如果类里面存在有参数的构造方法，则无参构造方法失效
//        以后如果有单例模式的情况下，要写一个私有的无参构造方法
//        Child child = new Child();
//        boolean exists = file.exists();
//        System.out.println(exists);
//        if (!exists) {
//            file.mkdirs();//创建文件夹
//        }
//        创建文件,创建文件之前一定要判断当前文件的路径是否存在，如果不存在则创建文件夹
        int index = pathname.lastIndexOf("/");
        String path = pathname.substring(0, index);
        String fileName = pathname.substring(index);
//        System.out.println(path);
        File directory = new File(path);
        directory.isDirectory();//判断是否是文件夹
        if (!directory.exists()) {
            directory.mkdirs();
        }
        File file = new File(directory, fileName);
        file.createNewFile();
        String value = "fasdfasd";
//        输入
//        输出
        System.out.println();//从内存输出到硬盘 写
//      class FileOutputStream implements  OutputStream  {}implements 只能用于接口
//        class FileOutputStream extends   OutputStream  {}
//        抽象类和接口的区别?
//        接口的目的就是为了实现多态,既然是多态，那么FileOutputStream就需要去实现OutputStream的抽象方法
//        OutputStream outputStream = new FileOutputStream(file);
//        byte[] bytes = new byte[100];
//        如果是int会进行转码  ascII嘛
//        outputStream.write(36);


    }

}

